50个常用的 Numpy 函数详解

您所在的位置:网站首页 python 类 数组 50个常用的 Numpy 函数详解

50个常用的 Numpy 函数详解

2023-05-24 05:01| 来源: 网络整理| 查看: 265

df434930cec7f51f7bb276404b47a4fb.png

来源:CDA数据分析师

本文约7500字,建议阅读15分钟

在本文中,将介绍NumPy在数据科学中最重要和最有用的一些函数。

7d9e5bb2bd0d3ebd332ffa609693bf35.jpeg

Numpy是python中最有用的工具之一。它可以有效地处理大容量数据。使用NumPy的最大原因之一是它有很多处理数组的函数。在本文中,将介绍NumPy在数据科学中最重要和最有用的一些函数。 创建数组 1、Array

它用于创建一维或多维数组

numpy.array(object, dtype=None, *, copy=True, order='K', subok=False, ndmin=0, like=None)

Dtype:生成数组所需的数据类型。  

ndim:指定生成数组的最小维度数。

import numpy as np np.array([1,2,3,4,5]) ---------------- array([1, 2, 3, 4, 5, 6])

还可以使用此函数将pandas的df和series转为NumPy数组。

sex = pd.Series(['Male','Male','Female']) np.array(sex) ------------------------ array(['Male', 'Male', 'Female'], dtype=object) 2、Linspace

创建一个具有指定间隔的浮点数的数组。

numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None, axis=0)[source]

start:起始数字end:结束Num:要生成的样本数,默认为50。

np.linspace(10,100,10) -------------------------------- array([ 10., 20., 30., 40., 50., 60., 70., 80., 90., 100.]) 3、Arange

在给定的间隔内返回具有一定步长的整数。

numpy.arange([start, ]stop, [step, ]dtype=None, *, like=None)

step:数值步长。

np.arange(5,10,2) ----------------------- array([5, 7, 9]) 4、Uniform

在上下限之间的均匀分布中生成随机样本。

numpy.random.uniform(low=0.0, high=1.0, size=None) np.random.uniform(5,10,size = 4) ------------ array([6.47445571, 5.60725873, 8.82192327, 7.47674099]) np.random.uniform(size = 5) ------------ array([0.83358092, 0.41776134, 0.72349553]) np.random.uniform(size = (2,3)) ------------ array([[0.7032511 , 0.63212039, 0.6779683 ], [0.81150812, 0.26845613, 0.99535264]]) 5、Random.randint

在一个范围内生成n个随机整数样本。

numpy.random.randint(low, high=None, size=None, dtype=int) np.random.randint(5,10,10) ------------------------------ array([6, 8, 9, 9, 7, 6, 9, 8, 5, 9]) 6、Random.random

生成n个随机浮点数样本。

numpy.random.random(size=None) np.random.random(3) --------------------------- array([0.87656396, 0.24706716, 0.98950278]) 7、Logspace

在对数尺度上生成间隔均匀的数字。

numpy.logspace(start, stop, num=50, endpoint=True, base=10.0, dtype=None, axis=0)

Start:序列的起始值。

End:序列的最后一个值。

endpoint:如果为True,最后一个样本将包含在序列中。base:底数。默认是10。

np.logspace(0,10,5,base=2) ------------------ array([1.00000000e+00, 5.65685425e+00, 3.20000000e+01, 1.81019336e+02,1.02400000e+03]) 8、zeroes

np.zeroes会创建一个全部为0的数组。

numpy.zeros(shape, dtype=float, order='C', *, like=None)

shape:阵列的形状。

Dtype:生成数组所需的数据类型。' int '或默认' float '

np.zeros((2,3),dtype='int') --------------- array([[0, 0, 0], [0, 0, 0]]) np.zeros(5) ----------------- array([0., 0., 0., 0., 0.]) 9、ones

np.ones函数创建一个全部为1的数组。

numpy.ones(shape, dtype=None, order='C', *, like=None) np.ones((3,4)) ------------------ array([[1., 1., 1., 1.], [1., 1., 1., 1.], [1., 1., 1., 1.]]) 10、full

创建一个单独值的n维数组。

numpy.full(shape, fill_value, dtype=None, order='C', *, like=None)

fill_value:填充值。

np.full((2,4),fill_value=2) -------------- array([[2, 2, 2, 2], [2, 2, 2, 2]])(2,4) : ꜱʜᴀᴘᴇ 11、Identity

创建具有指定维度的单位矩阵。

numpy.identity(n, dtype=None, *, like=None) np.identity(4) ---------- array([[1., 0., 0., 0.], [0., 1., 0., 0.], [0., 0., 1., 0.], [0., 0., 0., 1.]])#ᴅᴇꜰᴀᴜʟᴛ ᴅᴀᴛᴀ ᴛʏᴘᴇ ɪꜱ `ꜰʟᴏᴀᴛ` 数组操作 12、min

返回数组中的最小值。

np.min(a, axis=None, out=None, keepdims=, initial=, where=)

axis:用于操作的轴。out:用于存储输出的数组。

arr = np.array([1,1,2,3,3,4,5,6,6,2]) np.min(arr) ---------------- 1 13、max

返回数组中的最大值。

np.max(a, axis=None,out=None) np.max(arr) ------------------ 6 14、unique

返回一个所有唯一元素排序的数组。

numpy.unique(ar, return_index=False, return_inverse=False, return_counts=False, axis=None, *, equal_nan=True)

return_index:如果为True,返回数组的索引。return_inverse:如果为True,返回唯一数组的下标。return_counts:如果为True,返回数组中每个唯一元素出现的次数。axis:要操作的轴。默认情况下,数组被认为是扁平的。

np.unique(arr,return_counts=True) --------------------- ( array([1, 2, 3, 4, 5, 6]), ## Unique elements array([2, 2, 2, 1, 1, 2], dtype=int64) ## Count ) 15、mean

返回数组的平均数

numpy.mean(a, axis=None, dtype=None, out=None) np.mean(arr,dtype='int') ------------------------------- 3 16、medain

返回数组的中位数。

numpy.medain(a, axis=None, out=None) arr = np.array([[1,2,3],[5,8,4]]) np.median(arr) ----------------------------- 3.5 17、digitize

返回输入数组中每个值所属的容器的索引。

numpy.digitize(x, bins, right=False)[source]

bin:容器的数组。right:表示该间隔是否包括右边或左边的bin。

a = np.array([-0.9, 0.5, 0.9, 1, 1.2, 1.4, 3.6, 4.7, 5.3]) bins = np.array([0,1,2,3]) np.digitize(a,bins) ------------------------------- array([0, 1, 1, 2, 2, 2, 4, 4, 4], dtype=int64) Exp Value x < 0 : 0 0


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3